package com.dragon.modules.yuegou.query.product;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dragon.modules.yuegou.entity.product.HelpMemberJoininEntity;
import com.dragon.modules.yuegou.mybatis.Condition;
import com.dragon.modules.yuegou.mybatis.Query;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonUnwrapped;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 会员助力活动参与信息表 动态查询条件
 * 
 * @author px
 * @date 2019-04-12 09:11:43
 * @version 2.0
 */
@JsonInclude(Include.NON_NULL)
public class HelpMemberJoininQuery extends HelpMemberJoininEntity implements Query<HelpMemberJoininEntity> {

    /** 查询条件 */
	@JsonUnwrapped(prefix = "id")
	private Condition<String> idCondition;

    /** 当前参加人数查询条件 */
	@JsonUnwrapped(prefix = "busdId")
	private Condition<String> busdIdCondition;

    /** 助力活动ID查询条件 */
	@JsonUnwrapped(prefix = "helpId")
	private Condition<String> helpIdCondition;

    /** 商品ID查询条件 */
	@JsonUnwrapped(prefix = "skuId")
	private Condition<String> skuIdCondition;

    /** 参与助力活动的会员ID查询条件 */
	@JsonUnwrapped(prefix = "memberId")
	private Condition<String> memberIdCondition;

    /** 发起助力活动的会员ID查询条件 */
	@JsonUnwrapped(prefix = "createHelpMemberId")
	private Condition<String> createHelpMemberIdCondition;

    /** 会员参与的活动ID查询条件 */
	@JsonUnwrapped(prefix = "helpMemberRefId")
	private Condition<String> helpMemberRefIdCondition;

    /** 助力最大值查询条件 */
	@JsonUnwrapped(prefix = "helpMaxValue")
	private Condition<BigDecimal> helpMaxValueCondition;

    /** 助力当前值查询条件 */
	@JsonUnwrapped(prefix = "helpNowValue")
	private Condition<BigDecimal> helpNowValueCondition;

    /** 助力时间查询条件 */
	@JsonUnwrapped(prefix = "createdTime")
	private Condition<LocalDateTime> createdTimeCondition;

	/**
	 * 构造一个查询条件对象
	 */
	public HelpMemberJoininQuery() {
		super();
	}

	/**
	 * 依据实体对象构造一个查询条件对象
	 * 
	 * @param entity 实体对象
	 */
	public HelpMemberJoininQuery(HelpMemberJoininEntity entity) {
		super(entity);
	}

	/**
	 * 依据其它查询条件对象的信息构造一个查询条件对象
	 * 
	 * @param other 查询条件对象
	 */
	public HelpMemberJoininQuery(HelpMemberJoininQuery other) {
		super(other);
		if(other.idCondition != null) {
			this.idCondition = other.idCondition.copy();
		}
		if(other.busdIdCondition != null) {
			this.busdIdCondition = other.busdIdCondition.copy();
		}
		if(other.helpIdCondition != null) {
			this.helpIdCondition = other.helpIdCondition.copy();
		}
		if(other.skuIdCondition != null) {
			this.skuIdCondition = other.skuIdCondition.copy();
		}
		if(other.memberIdCondition != null) {
			this.memberIdCondition = other.memberIdCondition.copy();
		}
		if(other.createHelpMemberIdCondition != null) {
			this.createHelpMemberIdCondition = other.createHelpMemberIdCondition.copy();
		}
		if(other.helpMemberRefIdCondition != null) {
			this.helpMemberRefIdCondition = other.helpMemberRefIdCondition.copy();
		}
		if(other.helpMaxValueCondition != null) {
			this.helpMaxValueCondition = other.helpMaxValueCondition.copy();
		}
		if(other.helpNowValueCondition != null) {
			this.helpNowValueCondition = other.helpNowValueCondition.copy();
		}
		if(other.createdTimeCondition != null) {
			this.createdTimeCondition = other.createdTimeCondition.copy();
		}
	}

	@Override
	public QueryWrapper<HelpMemberJoininEntity> toQueryWrapper() {
		QueryWrapper<HelpMemberJoininEntity> wrapper = new QueryWrapper<>(this);
		if (idCondition != null) {
			idCondition.toWrapper(wrapper, COL_ID);
		}
		if (busdIdCondition != null) {
			busdIdCondition.toWrapper(wrapper, COL_BUSD_ID);
		}
		if (helpIdCondition != null) {
			helpIdCondition.toWrapper(wrapper, COL_HELP_ID);
		}
		if (skuIdCondition != null) {
			skuIdCondition.toWrapper(wrapper, COL_SKU_ID);
		}
		if (memberIdCondition != null) {
			memberIdCondition.toWrapper(wrapper, COL_MEMBER_ID);
		}
		if (createHelpMemberIdCondition != null) {
			createHelpMemberIdCondition.toWrapper(wrapper, COL_CREATE_HELP_MEMBER_ID);
		}
		if (helpMemberRefIdCondition != null) {
			helpMemberRefIdCondition.toWrapper(wrapper, COL_HELP_MEMBER_REF_ID);
		}
		if (helpMaxValueCondition != null) {
			helpMaxValueCondition.toWrapper(wrapper, COL_HELP_MAX_VALUE);
		}
		if (helpNowValueCondition != null) {
			helpNowValueCondition.toWrapper(wrapper, COL_HELP_NOW_VALUE);
		}
		if (createdTimeCondition != null) {
			createdTimeCondition.toWrapper(wrapper, COL_CREATED_TIME);
		}
		return wrapper;
	}

	/**
	 * 构造并返回查询条件
	 * 
	 * @return idCondition 查询条件
	 */
	public Condition<String> id() {
		this.idCondition = new Condition<>();
		return this.idCondition;
	}
	
	/**
	 * 获取查询条件
	 * 
	 * @return idCondition 查询条件
	 */
	public Condition<String> getIdCondition() {
		return idCondition;
	}

	/**
	 * 设置查询条件
	 * 
	 * @param idCondition 查询条件
	 */
	public void setIdCondition(Condition<String> idCondition) {
		this.idCondition = idCondition;
	}

	/**
	 * 构造并返回当前参加人数查询条件
	 * 
	 * @return busdIdCondition 当前参加人数查询条件
	 */
	public Condition<String> busdId() {
		this.busdIdCondition = new Condition<>();
		return this.busdIdCondition;
	}
	
	/**
	 * 获取当前参加人数查询条件
	 * 
	 * @return busdIdCondition 当前参加人数查询条件
	 */
	public Condition<String> getBusdIdCondition() {
		return busdIdCondition;
	}

	/**
	 * 设置当前参加人数查询条件
	 * 
	 * @param busdIdCondition 当前参加人数查询条件
	 */
	public void setBusdIdCondition(Condition<String> busdIdCondition) {
		this.busdIdCondition = busdIdCondition;
	}

	/**
	 * 构造并返回助力活动ID查询条件
	 * 
	 * @return helpIdCondition 助力活动ID查询条件
	 */
	public Condition<String> helpId() {
		this.helpIdCondition = new Condition<>();
		return this.helpIdCondition;
	}
	
	/**
	 * 获取助力活动ID查询条件
	 * 
	 * @return helpIdCondition 助力活动ID查询条件
	 */
	public Condition<String> getHelpIdCondition() {
		return helpIdCondition;
	}

	/**
	 * 设置助力活动ID查询条件
	 * 
	 * @param helpIdCondition 助力活动ID查询条件
	 */
	public void setHelpIdCondition(Condition<String> helpIdCondition) {
		this.helpIdCondition = helpIdCondition;
	}

	/**
	 * 构造并返回商品ID查询条件
	 * 
	 * @return skuIdCondition 商品ID查询条件
	 */
	public Condition<String> skuId() {
		this.skuIdCondition = new Condition<>();
		return this.skuIdCondition;
	}
	
	/**
	 * 获取商品ID查询条件
	 * 
	 * @return skuIdCondition 商品ID查询条件
	 */
	public Condition<String> getSkuIdCondition() {
		return skuIdCondition;
	}

	/**
	 * 设置商品ID查询条件
	 * 
	 * @param skuIdCondition 商品ID查询条件
	 */
	public void setSkuIdCondition(Condition<String> skuIdCondition) {
		this.skuIdCondition = skuIdCondition;
	}

	/**
	 * 构造并返回参与助力活动的会员ID查询条件
	 * 
	 * @return memberIdCondition 参与助力活动的会员ID查询条件
	 */
	public Condition<String> memberId() {
		this.memberIdCondition = new Condition<>();
		return this.memberIdCondition;
	}
	
	/**
	 * 获取参与助力活动的会员ID查询条件
	 * 
	 * @return memberIdCondition 参与助力活动的会员ID查询条件
	 */
	public Condition<String> getMemberIdCondition() {
		return memberIdCondition;
	}

	/**
	 * 设置参与助力活动的会员ID查询条件
	 * 
	 * @param memberIdCondition 参与助力活动的会员ID查询条件
	 */
	public void setMemberIdCondition(Condition<String> memberIdCondition) {
		this.memberIdCondition = memberIdCondition;
	}

	/**
	 * 构造并返回发起助力活动的会员ID查询条件
	 * 
	 * @return createHelpMemberIdCondition 发起助力活动的会员ID查询条件
	 */
	public Condition<String> createHelpMemberId() {
		this.createHelpMemberIdCondition = new Condition<>();
		return this.createHelpMemberIdCondition;
	}
	
	/**
	 * 获取发起助力活动的会员ID查询条件
	 * 
	 * @return createHelpMemberIdCondition 发起助力活动的会员ID查询条件
	 */
	public Condition<String> getCreateHelpMemberIdCondition() {
		return createHelpMemberIdCondition;
	}

	/**
	 * 设置发起助力活动的会员ID查询条件
	 * 
	 * @param createHelpMemberIdCondition 发起助力活动的会员ID查询条件
	 */
	public void setCreateHelpMemberIdCondition(Condition<String> createHelpMemberIdCondition) {
		this.createHelpMemberIdCondition = createHelpMemberIdCondition;
	}

	/**
	 * 构造并返回会员参与的活动ID查询条件
	 * 
	 * @return helpMemberRefIdCondition 会员参与的活动ID查询条件
	 */
	public Condition<String> helpMemberRefId() {
		this.helpMemberRefIdCondition = new Condition<>();
		return this.helpMemberRefIdCondition;
	}
	
	/**
	 * 获取会员参与的活动ID查询条件
	 * 
	 * @return helpMemberRefIdCondition 会员参与的活动ID查询条件
	 */
	public Condition<String> getHelpMemberRefIdCondition() {
		return helpMemberRefIdCondition;
	}

	/**
	 * 设置会员参与的活动ID查询条件
	 * 
	 * @param helpMemberRefIdCondition 会员参与的活动ID查询条件
	 */
	public void setHelpMemberRefIdCondition(Condition<String> helpMemberRefIdCondition) {
		this.helpMemberRefIdCondition = helpMemberRefIdCondition;
	}

	/**
	 * 构造并返回助力最大值查询条件
	 * 
	 * @return helpMaxValueCondition 助力最大值查询条件
	 */
	public Condition<BigDecimal> helpMaxValue() {
		this.helpMaxValueCondition = new Condition<>();
		return this.helpMaxValueCondition;
	}
	
	/**
	 * 获取助力最大值查询条件
	 * 
	 * @return helpMaxValueCondition 助力最大值查询条件
	 */
	public Condition<BigDecimal> getHelpMaxValueCondition() {
		return helpMaxValueCondition;
	}

	/**
	 * 设置助力最大值查询条件
	 * 
	 * @param helpMaxValueCondition 助力最大值查询条件
	 */
	public void setHelpMaxValueCondition(Condition<BigDecimal> helpMaxValueCondition) {
		this.helpMaxValueCondition = helpMaxValueCondition;
	}

	/**
	 * 构造并返回助力当前值查询条件
	 * 
	 * @return helpNowValueCondition 助力当前值查询条件
	 */
	public Condition<BigDecimal> helpNowValue() {
		this.helpNowValueCondition = new Condition<>();
		return this.helpNowValueCondition;
	}
	
	/**
	 * 获取助力当前值查询条件
	 * 
	 * @return helpNowValueCondition 助力当前值查询条件
	 */
	public Condition<BigDecimal> getHelpNowValueCondition() {
		return helpNowValueCondition;
	}

	/**
	 * 设置助力当前值查询条件
	 * 
	 * @param helpNowValueCondition 助力当前值查询条件
	 */
	public void setHelpNowValueCondition(Condition<BigDecimal> helpNowValueCondition) {
		this.helpNowValueCondition = helpNowValueCondition;
	}

	/**
	 * 构造并返回助力时间查询条件
	 * 
	 * @return createdTimeCondition 助力时间查询条件
	 */
	public Condition<LocalDateTime> createdTime() {
		this.createdTimeCondition = new Condition<>();
		return this.createdTimeCondition;
	}
	
	/**
	 * 获取助力时间查询条件
	 * 
	 * @return createdTimeCondition 助力时间查询条件
	 */
	public Condition<LocalDateTime> getCreatedTimeCondition() {
		return createdTimeCondition;
	}

	/**
	 * 设置助力时间查询条件
	 * 
	 * @param createdTimeCondition 助力时间查询条件
	 */
	public void setCreatedTimeCondition(Condition<LocalDateTime> createdTimeCondition) {
		this.createdTimeCondition = createdTimeCondition;
	}

}
